Oftentimes, websites and web-based services are updated to provide new services, different service, different data and the like to users and/or customers. These updates are often performed under versioning control—e.g., from Version 1 to Version 2. During a front end deployment, it is typically desirable that a user should not see the older version of the website if the user has already seen the newer version. In the past, websites may have: (a) deployed 50% of their environment at a time so that no two versions are available for any given single request, (b) maintained the last version of the user saw in a back end store, or (c) been comfortable with users moving between website versions.
During internal testing, users typically go to a “special” URL to hit beta code. This may tend to be complicated for web services since users/clients making calls to endpoints must be aware of all the beta environments. It may also be challenging to add value without introducing additional overhead when adding additional vertical environment stacks (e.g., additional beta environments).